Automatic display of messages on display screen

ABSTRACT

A method, Internet protocol television (IPTV) enabled communication device, and computer program product for automatic message services are provided. A processor executes instructions from a memory. An input and output (I/O) device is for transmitting and receiving, respectively. A client application is stored in the memory and configured to provide the automatic message service. The client application receives input of a message to be presented at an appropriate time, receives input of an action associated with the message, receives input of a recipient for the message, and presents the message for display to the recipient at the appropriate time.

BACKGROUND

Exemplary, embodiments relate generally to the field of networkcommunications, and more particularly, to networks that support Internetprotocol television services.

Internet protocol television (IPTV) is a digital television deliveryservice wherein the digital television signal is delivered toresidential users via a computer network infrastructure using theInternet Protocol. Typically, IPTV services are bundled with additionalInternet services such as Internet web access and voice over Internetprotocol (VoIP). Subscribers receive IPTV services via a set top boxthat is connected to a television or display device for the reception ofa digital signal. Used in conjunction with an IP-based platform, the settop box allows for a subscriber to access IPTV services and anyadditional services that are integrated within the IPTV service.

IPTV service platforms allow for an increase in the interactive servicesthat can be provided to residential subscribers. As such, a subscribercan have access to a wide variety of content that is available via theIPTV service or the Internet. For example, a subscriber (or user of asubscriber device) may utilize interactive services via a set top box toview IPTV content via an Internet web browser. The IPTV infrastructurealso allows the delivery of a variety of video content instantly to thesubscribers.

In previous generation cable and satellite based television deliverysystems, the subscriber is limited to the content provided by theparticular delivery service. It is desirable to personalize the displayof content provided on the television.

BRIEF SUMMARY

Exemplary embodiments include an Internet protocol television (IPTV)enabled communication device that provides automatic message service. Aprocessor executes instructions from a memory. A client application isstored in the memory and configured to provide the automatic messageservice. The client application receives input of a message to bepresented at an appropriate time, receives input of an action associatedwith the message, receives input of a recipient for the message, andpresents the message for display to the recipient at the appropriatetime.

Additional exemplary embodiments include a method for providingautomatic message service for an Internet protocol television (IPTV)enabled communication device. Input of a message to be presented at anappropriate time is received, and input of an action associated with themessage is received. Also, input of a recipient to the message isreceived. The message is presented to the recipient for display at theappropriate time on the communication device.

Further exemplary embodiments include a computer program product,tangibly embodied on a computer readable medium for providing automaticmessage services for an Internet protocol television (IPTV) enabledcommunication device. The computer program product includes instructionsfor causing a computer to execute the method.

Other systems, methods, and/or computer program products according toembodiments will be or become apparent to one with skill in the art uponreview of the following drawings and detailed description. It isintended that all such additional systems, methods, and/or computerprogram products be included within this description, be within thescope of the exemplary embodiments, and be protected by the accompanyingclaims.

BRIEF DESCRIPTION OF DRAWINGS

Referring now to the drawings wherein like elements are numbered alikein the several FIGURES:

FIG. 1 illustrates a block diagram of a system in accordance withexemplary embodiments;

FIG. 2 illustrates non-limiting examples of screens for inputtingmessages in accordance with exemplary embodiments;

FIG. 3 illustrates non-limiting examples of accessing messages inaccordance with exemplary embodiments;

FIG. 4 illustrates a method for providing automatic messages on Internetprotocol enabled televisions in accordance with exemplary embodiments;

FIG. 5 illustrates an example of a computer in which exemplaryembodiments may be implemented; and

FIG. 6 illustrates a block diagram of operations in accordance withexemplary embodiments.

The detailed description explains exemplary embodiments, together withadvantages and features, by way of example with reference to thedrawings.

DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTS

FIG. 1 illustrates a block diagram of a system 100 in accordance withexemplary embodiments. The system 100 provides an infrastructure throughwhich users can access message services through a communications device105, such as an IPTV enabled television and a computing device 110, suchas a set top box, configuration, or any other type communication device.In exemplary embodiments, the communications device 105 may contain theinterworkings of the set top box 110, and the set top box 110 may beomitted. As an IPTV network, the system 100 may also include a remotecontroller 115 for inputting information and controlling thecommunications device 105. Also, the system 100 may include a device 175operatively connected to the set top box 110. The device 175 may be agaming device for playing video games, an audio device for recording,decoding, and/or playing audio, a digital video recorder for recordingand playing back video, or any combination of electronic devices.

The communications device 105 is in communication with a server, such asa server 130 (which may be a back-end server) and a storage 135, via anetwork 120. The network 120 may include circuit-switched and/orpacket-switched technologies and devices, such as routers, switches,hubs, gateways, etc., for facilitating communications between thecommunications device 105 and networked entities. The network 120 mayinclude wireline and/or wireless components utilizing, e.g., IEEE 802.11standards for providing over-the-air transmissions of communications.The network 120 can include IP-based networks for communication betweena customer service center and clients using the communication device 105via a broadband connection.

In exemplary embodiments, servers 170 and 180 may be operativelyconnected to the network 120. Various enterprises or businesses canutilize the servers 170 and 180 to communicate with other networkedentities via the network 120.

Referring to FIG. 6, the set top box 110 may include a clientapplication 600 and an execution application 605. The client application600 provides a suitable user interface for inputting and accessingmessages. The messages input by the creator may be coupled to an actionthat can be executed by the execution application 605.

The execution application 605 is capable of communicating over a widevariety of protocols. The execution application 605 may be configured tocommunicate with various devices, such as the device 175 (which may be agaming system, computer system, home theater system, and the like). If auser inputs a message in a user interface of the client application 600,the user may choose to associate an action to the message. The messagemay be a request to do a task or question. If the recipient reads themessage and selects, e.g., OK, the execution application 605 may executethe particular action. For example, when the recipient of the messageclicks OK, the user may have input a telephone number to be called, theuser may have entered a URL or an IP address to operatively be connectedto, or the user may have mapped to a device (e.g., the device 175) orapplication such that the device or application is enabled or disabled.In response to the recipient selecting OK, the client application 600can instruct the execution application 605 to perform the associatedaction that has been set up previously by the user. Also, the executionapplication 605 can be mapped to various devices and applications in oroperatively connected to the set top box 110 (or communications device105). The execution application 605 can be instructed to input variousdata in data fields of the applications. Also, the execution application605 can be instructed to transmit signals to the devices, e.g., tostart, to pause, or to shut down.

The server 130 may include a server application 610. The clientapplication 600 of the set top box 110 interacts with the serverapplication 610 in accordance with exemplary embodiments.

The server 170 may, e.g., host services for an enterprise (e.g., a pizzaenterprise) so that orders can be placed and paid for via the network120. The server 170 may include an order application 615 for acceptingand confirming (pizza) orders. The server 170 may communicate with thesever 180. Various types of secure payment services may be implementedoil the server 180, such as, e.g., PAYPAL. The server 180 may include apayment application 620 for transacting payments for goods and services.The server 180 may include authentication, authorization, and accounting(AAA) software 625 for handling user requests for access to computerresources and for providing authentication, authorization, andaccounting services. The AAA software 625 can allow or deny access tothe payment application 620 for payment services on the server 180.

FIG. 6 also includes the device 175. The device 175 may include anaccess application 630 for allowing or denying access to the device 175.The execution application 605 of the set top box 110 can be set to causethe access application 630 to allow or deny services to the device 175.Also, the execution application 605 can be set to turn off audio andvideo inputs of the set top box 110, such that the device 175 cannotcommunicate via the audio and video inputs of the set top box 110.

Referring to FIG. 1, in exemplary embodiments, messages may be stored onthe server 130 and the storage 135. Also, messages may be stored on theset top box 110. The messages may be input from a variety of inputdevices, such as the remote controller 115, a cell phone 140, a personaldigital assistant (PDA) 145, a personal computer 150, etc. As anon-limiting example, using the remote controller 115, a mother may usethe remote controller 115 to input a message for her son, via the clientapplication 600 of the set top box 110 and the server application 610 ofthe server 130, so that the son can view the message on thecommunications device 105. Using the remote controller 115, the mothermay input “I am going to be late; order pizza tonight.” The userinterface of the client application 600 can display an OK button for theson to select, and the son may use the remote controller 115 to selectthe OK button oil the user interface of the client application 600. Inresponse to selecting OK oil the application 600, the client application600 may instruct the execution application 605 to call a local pizzarestaurant. The telephone number to the pizza restaurant may have beeninput in the client application 600 by the mother, or the pizzarestaurant can be selected from a preexisting list of restaurants inputin advance. The execution application 605 can connect the home phone(not shown) to the pizza restaurant via the network 120. The son canplace the order for the pizza using the home phone.

Also, in exemplary embodiments, the execution application 605 mayoperatively connect the set top box 110 with the server 170, in responseto selecting OK. In this non-limiting example, the server 170 mayrepresent the local pizza restaurant. The order application 615 of theserver 170 can be used for receiving orders (for pizza). The clientapplication 600 can be configured to input the required data for theorder application 615. Also, the son can input any data required by theorder application 615.

In exemplary embodiments, the order application 615 of the server 170may have the capabilities to receive payment for the order, such ascredit card information or account information. The account informationmay be for a preexisting account already established with the enterprisehosted by the server 170, which is a pizza restaurant in thisnon-limiting example.

Also, in exemplary embodiments, payment may be executed using the server180. The AAA software 625 of the server 180 may verify that the sonconnected on the set top box 110 has authorization to pay for the pizza.The payment application 620 may receive payment for the pizza. A securepayment may be made, e.g., using a credit card. The credit cardinformation may be accessed by the client application 600 (e.g., thecredit card information may be securely stored on memory of the set topbox 110 or the server 130). Also, the son may input the credit cardinformation using the remote controller 115.

The mother may input the same or different messages for her daughter,husband, and others in the household. If the mother has permissions, themother can input messages for others to view that are not in herhousehold, i.e., the mother may input a message for her best friend wholives in another city.

As a non-limiting example, the mother may be given a special code and/ora unique identification of the best friend. With the special code and/orunique identification, the mother can input messages for the best friendin the client application 600 so that the messages can be displayed onthe IPTV device (similar to, e.g., the communications device 105) of thebest friend in accordance with exemplary embodiments. In exemplaryembodiments, a message for the best friend may be input in the clientapplication 600 by the mother, and the client application 600communicates with the server application 610 to authenticate the specialcode and/or unique identification and to provide the message to the bestfriend if authenticated.

In accordance with exemplary embodiments, the mother may input a messagein the user interface of the client application 600 that reads, e.g.,“You are not going to be able to watch T.V. until you clean your room.After you clean your room, select OK.” Using the remote controller 115,the mother can lock access to television programming, of thecommunications device 105. As a non-limiting example, the clientapplication 600 may instruct the execution application 605 to restrictaccess to media unless a password is input. In the user interface of theclient application 600, the mother can associate the password torestrict access to media on the communications device 105 with the sonselecting OK. After the son cleans his room, he may select OK on theuser interface of the client application 600. In response to selectingOK, the password is input and the execution application 605 unlocks thecommunication device 105. Alternatively and/or additionally, the mothermay input the password in a parental controls application to lock accessto television programming. In response to selecting OK, the executionapplication 605 opens the parental controls application and inputs thepassword in the parental control application.

When a message is read using the client application 600 and/or when theaction related to the message is executed by the execution application605, an acknowledgement may be transmitted to the creator of the message(e.g., the mother).

In accordance with exemplary embodiments, a user may input a message“John would you record the super bowl at 8:00” in the client application600. Since there is no action associated with the message, the clientapplication 600 may parse the message for keywords, such as record,super bowl, and 8:00. The client application 600 may parse a T.V.program listing to determine if the keywords (record, super bowl, and8:00) can be correlated to a particular program in the program listing.The client application 600 may determine that the super bowl isscheduled to be broadcast on channel ZZZ at 7:30. The client application600 associates an action to the message and displays “Click OK to recordthe super bowl at 7:30 on channel ZZZ.” If John clicks OK, the executionapplication 605 causes the device 175 (e.g., a digital video recorder)to record the super bowl. Also, if the set top box 110 has recordingcapabilities, the execution application 605 can cause the set top box110 to record the super bowl at 7:30. The client application 600recognized keywords from the message and provided an action based on thekeywords in the message. From parsing the program listing (andmetadata), the client application 600 determined that the 8:00 timeinput by the user was later than the 7:00 time in the program listingscheduled for the super bowl.

In exemplary embodiments, the user may input the following message inthe user interface of the client application 600: “John would you recordthe super bowl at 8:00. Click OK to record.” in this non-limitingexample, the user has associated the action to the message for theexecution application 605 to execute. John can click OK on the clientapplication 600 to record super bowl.

Moreover, it is understood that there are many ways to implement theexemplary embodiments and that illustrations are provided herein forexplanatory purposes. Also, it is understood that although non-limitingexamples have been provided using certain scenarios (e.g., with amother), no scenarios are not meant to be limiting in any way.

FIG. 2 illustrates non-limiting examples of screens for inputtingmessages in accordance with exemplary embodiments. When inputting themessage in accordance with exemplary embodiments, the user may go to alog in screen 200 and enter, e.g., a username and password. As discussedherein, data may be input using, e.g., the remote controller 115, thecell phone 140, the PDA 145, or the personal computer 150. The user mayselect a message tab from a menu, and the user may go to a messagescreen 210 that has a plurality of options for the user, such ascreating messages, creating message action, viewing sent messages,viewing new or old messages in an inbox, deleting messages, settingpreferences, etc. The user may choose to create a new message and mayinput the message in a create message screen 220.

The user may select create message action on the message screen 210,because the user may desire to have an action associated with themessage. An action message screen 230 may have preexisting selections tochoose from, and/or the user may create a particular action to associatewith the message in the action message screen 230. The user may desireto map to an application or device, so that the device (or application)can be enabled or disabled by the execution application 605, based onthe response by the recipient of the message. Also, the user may input atelephone number in the client application 600 so that a response to themessage causes the execution application 605 to call the telephonenumber.

In exemplary embodiments, the message itself or a response to themessage (such as selecting OK) may initiate an action. For example,selecting the OK button of the user interface for the client application600 may cause the execution application 605 to enable or disable afunction, a device (e.g., the device 175), a capability, or the like.Also, the execution application 605 can cause other programs andapplications to be initiated. As non-limiting examples, the executionapplication 605 may cause a television program to be recorded, atelephone call to be placed (e.g., using voice of Internet Protocol(VOIP) or using the PSTN), audio and video (A/V) inputs and outputs tobe enabled and/or disabled, an operative connection to servers to bemade, and the like. The user interface of the client application 600allows additional action setting to be added as desired by the user. Asa non-limiting example, the client application 600 can be used to causethe execution application 605 to be mapped to various application ordevices, such as a theater system, ON-DEMAND programming, gamingsystems, recoding systems, 111 addresses, etc.

As a non-limiting example, the user (e.g., the mother) may input thefollowing message in the client application 600: “You are not going tobe able to watch T.V. until you finish your homework. After you finishyour homework, select OK.” In response to selecting OK, the clientapplication 600 may instruct the execution application 605 to input aparental password that allows the communications device 105 to beunlocked so that media can be accessed and/or displayed on thecommunications device 105.

According to exemplary embodiments, the user also has the option ofselecting which recipient that the message is designated for in arecipient screen 240. The user may also input a different name in therecipient screen 240. After designating the recipient, the message canbe stored in and/or transferred to the storage 135, the server 130,and/or the set top box 110. The message can be retrieved by the clientapplication 600, interacting with the server application 610, fordisplay on the communications device 105 at the appropriate time.

Further, if the user selects to transmit the message to the best friend,the user may input a password in an authorization screen 250. Theauthorization screen 250 allows the user to validate that he or she haspermission to cause the message to display on, e.g., an IPTV device ofthe best friend.

In exemplary embodiments, the user desiring to create a message may nothave to enter a username and password in the log in screen 200, and theuser may be able to select his or her name as the sender from a list ofnames (similar to the list of names for selecting recipients in therecipient screen 240).

The user has options of when (e.g., what time) the message is going tobe displayed in exemplary embodiments. The user may elect to have themessage displayed at 3:30 P.M., or the user may elect to have themessage displayed as soon as the communications device 105 (e.g., atelevision) is turned on. The user may elect to have the messagedisplayed on a particular date. The user may have multiple messages forthe same person or for different people, and each message can bedisplayed at its designated time. Moreover the user has many options insetting the time, date, and manner in which messages are to be displayedfor a recipient on the communications device 105.

The message may be for one time only, or the message may be recurring.As a non-limiting example, a mother may set a recurring message for herson on Monday through Friday which is displayed on the television as“Don't forget football practice at 3:30, select OK.” If the son selectsOK, the client applications 600 may instruct the execution application605 to transmit an acknowledgement message to the mother. Also, if theson does not select OK by 3:15, the client application 605 may instructthe execution application 605 to call the telephone (home phone or son'scell phone) and play a voice message “Don't forget football practice at3:30, select OK” that has been recorded using a microphone 160.

In accordance with exemplary embodiments, the user has the option ofelecting various features for the message. As a non-limiting example,the user may choose to have sound with the message, such as alarms,buzzers, music, rings, and the like. The user may also choose to have aparticular image (like a picture) associated with the message. Forexample, messages from a user's mom may have the mom's pictures, andmessages from a user's dad may have the dad's picture. Also, if thesubject matter of the message is about football, a picture of a footballmay be associated with the picture by the user.

Additionally, the user may choose to record a video of a message and/orrecord an audible message. For example, referring back to FIG. 1, acamera 155 (with a built-in microphone) and/or the separate microphone160 may be utilized by the user to record a message. The clientapplication 600 can capture the video and/or audio message, and theclient application 600 stores the message in the set top box 110 orstores the message in the server 130 (or storage 135) by communicatingwith the server application 610. At the appropriate time, the messagemay be retrieved by the client application 600 from the set top box 110or the server 130.

The client application 600 and the server application 610 may be used inimplementing exemplary embodiments. As a non-limiting example, when theuser desires to use automatic message services (as a sender orrecipient), the client application 600 may run in the background suchthat the various features discussed herein are provided to the user.Additionally, the client application 600 is in communication with theserver application 610 for providing automatic message services, e.g.,in a client/server architecture. As a non-limiting example, the clientapplication 600 may reside on the set top box 110, the cell phone 140,the PDA 145, and/or the personal computer 150. Alternatively, if memoryor processing resources are a concern, the client application 600 mayreside on the network 120, and the cell phone 140 or the PDA 145 mayaccess the client application 600 from the network 120. The serverapplication 610 may reside on a back-end server, such as the server 130.The client application 600 and the server application 610 can share theresponsibilities for the automatic message services.

FIG. 3 illustrates non-limiting examples of accessing messages inaccordance with exemplary embodiments. As a non-limiting example, theson (coming home from school) may turn on the communications device 105to access the IPTV network (e.g., the network 120), and general messagesfor everyone may be displayed on a general message screen 300. Accordingto exemplary embodiments, there is no restriction to accessing messagesin the general message screen 300, and the general message screen 300may show messages for multiple people, such as the husband, the son, thewife, and others. General messages in the general message screen 300 maybe set to display at designated times.

In accordance with exemplary embodiments, the messages may be set torecur over a period of time on certain dates. The messages, e.g. mayrecur hourly, daily, weekly, monthly, yearly, etc. There may be varioussounds associated with the messages, such as alarms, rings, buzzers,music, and the like. Also, the message left by the sender (e.g., themom) may be a voice message or a video message that can be recorded fordisplay later. As a non-limiting example, the mom can use the camera 155to record video (or a still picture) to be displayed with a text message(or as a message), or the mom can use the microphone 160 to record anaudile message; the message can be captured in any format by the clientapplication 600 for display on the communications device 105.

In exemplary embodiments, the son may enter his name and/or password ata log in screen 310 for personal messages. For example, there may bepersonal messages that are private, or the sender may not want to annoyothers with messages that do not relate to them. When the son logs intothe log in screen 310, a group of messages for the son may be displayedat a single time, and/or each message may be displayed separately at itsdesignated time. The client application 600 and the server application610 can communicate with one another to display the messages inaccordance with any designations set by the user.

In accordance with the setting of, e.g., the mom, a display messagescreen 320 shows a message being displayed for the son at 3:30 p.m. andan audible alarm sounds to alert the son to the message. The son mayselect the OK button in accordance with the message (or once the task iscomplete).

Although the display screen 320 depicts the message in the center of thedisplay screen 320, it is contemplated that the message may be invarious locations, such as the top, the bottom, the left or right side,and/or the center. As a non-limiting example, the message may be viewedon the communications device 105 in a manner that is similar topicture-in-picture (PIP), or in any other suitable manner. Also, themessage may be displayed in a streaming fashion, which may be similar toa ticker that runs across the communications device 105. Indeed, thereis no limit in the manner in which the message may be displayed oil thecommunications device 105 for the viewer.

In exemplary embodiments, the messages may be set to display atdesignated times regardless if anyone logs into the log in screen 310.As a non-limiting example, the message may be for the husband but theson may have logged in or no one has logged in, and while the son iswatching content on the IPTV, the message for the husband displays onthe IPTV at the designated time. Since the son is able to view themessage, the son can inform his father of the message. In other words,display of the messages is not limited to logging into the log in screen310, according to exemplary embodiments.

Various non-limiting examples of screens are depicted in FIGS. 2 and 3by way of illustration not limitation. It is understood that additionalfeatures may be added to the screens, screens may be placed in adifferent order, and/or the features of screens may be combined oromitted.

FIG. 4 illustrates a method for providing automatic messages on Internetprotocol enabled televisions (e.g., the communications device 105) inaccordance with exemplary embodiments. Input (e.g., using the remotecontroller 115, the cell phone 140, the PDA 145, the personal computer150, the camera 155, and/or the microphone 160) of a message to bepresented at an appropriate time is received by the client application600 at 400. Input of an action (to be executed by the executionapplication 605) corresponding to the message is received at 410.

Input of a recipient to the message is received by the clientapplication 600 at 420. The message may be stored in the set top box110, the server 130, and/or the storage 135 at 430.

In exemplary embodiments, the client application 600 may interact withthe server application 610 to retrieve the message from the server 130and, or the storage 135, or the client application 600 itself canretrieve the message from the set top box 110 at 440. The clientapplication 600 can present the message to the recipient at theappropriate time on the IPTV device (e.g., the communications device105) at 450.

In accordance with exemplary embodiments, the action corresponding tothe message may cause the client application 600 to instruct theexecution application 605 to enable or disable a device (such as thedevice 175), to enable or disable an application, to enable or disablecapabilities of the communication device 105, to operatively connect tocomputing devices (such as the servers 170, 180 or the device 175),and/or to place a telephone call.

Input of a username and a password corresponding to a creator of themessage may be received by the client application 600, such that thecreator of the message is identified as the message is being presentedon the IPTV device for the recipient. Similarly, input of a username anda password corresponding to the recipient of the messages may bereceived by the client application 600, so that the recipient can accessmessages (that may be private) for the recipient and so that others arerestricted from accessing messages for the recipient.

Further, the recipient is not limited to being one person and therecipient can be multiple people. The message is not limited to being asingle message but can be multiple messages, each having a different orthe same designated time for presentation.

As discussed herein, the client application 600 interacts with theserver application 610 to provide the automatic message service inaccordance with exemplary embodiments. The interactions, protocols, andoperations of client and server applications are well-known in the art.

Although for explanatory purposes the client application 600 and theexecution application 605 are illustrated as two separate applications,it is understood that the capabilities of both applications may beimplemented in a single application (e.g., the client application 600).Also, the capabilities of the client application 600 and the executionapplication 605 may be implemented in a plurality of applications andcomponents.

FIG. 5 illustrates an example of a computer 500 in which exemplaryembodiments may be implemented. The above methods may also beimplemented in the computer 500. The computer 500 includes, but is notlimited to, PCs, workstations, laptops, PDAs, palm devices, Internetprotocol enabled televisions (such as the communications device 105),set top boxes (such as the set top box 110), servers (such as theservers 130, 170, 180), and the like. Generally, in terms of hardwarearchitecture, the computer 500 may include a processor 510, memory 520,and one or more input and/or output (I/O) devices 570 (or peripherals)that are communicatively coupled via a local interface (not shown). Thelocal interface can be, for example but not limited to, one or morebuses or other wired or wireless connections, as is known in the art.The local interface may have additional elements, such as controllers,buffers (caches), drivers, repeaters, and receivers, to enablecommunications. Further, the local interface may include address,control, and/or data connections to enable appropriate communicationsamong the aforementioned components.

The processor 510 is a hardware device for executing software that canbe stored in the memory 520. The processor 510 can be virtually anycustom made or commercially available processor, a central processingunit (CPU), a data signal processor (DSP), or an auxiliary processoramong several processors associated with the computer 500, and theprocessor 510 may be a semiconductor based microprocessor (in the formof a microchip) or a microprocessor.

The memory 520 can include any one or combination of volatile memoryelements (e.g., random access memory (RAM), such as dynamic randomaccess memory (DRAM), static random access memory (SRAM), etc.) andnonvolatile memory elements (e.g. ROM, erasable programmable read onlymemory (EPROM), electronically erasable programmable read only memory(EEPROM), programmable read only memory (PROM), tape, compact disc readonly memory (CD-ROM), disk, diskette, cartridge, cassette or the like,etc.). Moreover, the memory 520 may incorporate electronic, magnetic,optical, and/or other types of storage media. Note that the memory 520can have a distributed architecture, where various components aresituated remote from one another, but can be accessed by the processor510.

The software in the memory 520 may include one or more separateprograms, each of which comprises an ordered listing of executableinstructions for implementing logical functions. The software in thememory 520 includes a suitable operating system (O/S) 550, compiler 540,source code 530, and application 560 (e.g., the client application 600,execution application 605, the server application 610, the orderapplication 615, the payment application 620, the AAA software 625, theaccess application 630, and/or any other application for implementingexemplary embodiments) of the exemplary embodiments. As illustrated, theapplication 560 may comprise numerous functional components forimplementing the features and operations of the exemplary embodiments.

The operating system 550 may control the execution of other computerprograms and may provide scheduling, input-output control, file and datamanagement, memory management, communication control, and relatedservices. It is contemplated by the inventors that the application 560for implementing automatic message services according to exemplaryembodiments is applicable on all commercially available operatingsystems.

The application 560 may be a source program, executable program (objectcode), script, or any other entity comprising a set of instructions tobe performed. When a source program, then the program is usuallytranslated via a compiler (such as the compiler 540), assembler,interpreter, or the like, which may or may not be included within thememory 520, so as to operate properly in connection with the O/S 550.Furthermore, the application 560 can be written as (a) an objectoriented programming language, which has classes of data and methods, or(b) a procedure programming language, which has routines, subroutines,and/or functions, for example but not limited to, C, C++, C#, PASCAL,BASIC, API calls, HTML. XHTML, XML, ASP scripts, FORTRAN, COBOL, PERL,JAVA, ADA, .NET, and the like.

The I/O devices 570 may include input devices such as, for example butnot limited to, a mouse, keyboard, scanner, microphone, etc.Furthermore, the I/O devices 570 may also include output devices, forexample but not limited to, a printer, display, etc. Finally, the I/Odevices 570 may further include devices that communicate both inputs andoutputs, for instance but not limited to, a NIC or modulator/demodulator(for accessing remote devices, other files, devices, systems, or anetwork), a radio frequency (RF) or other transceiver, a telephonicinterface, a bridge, a router, a universal serial bus (USB) device, etc.The I/O device 570 may comprise a modern or a transceiver forcommunicating over the network 120. Also, the computer 500 includesimage, video, and audio software and hardware for receiving, recording,manipulating, and playing back images, video, and audio.

If the computer 500 is a PC, workstation, intelligent device or thelike, the software in the memory 520 may further include a basic inputoutput system (BIOS) (omitted for simplicity). The BIOS is a set ofessential software routines that initialize and test hardware atstartup, start the O/S 550, and support the transfer of data among thehardware devices. The BIOS is stored in some type of read-only-memory,such as ROM, PROM, EPROM, EEPROM or the like, so that the BIOS can beexecuted when the computer 500 is activated.

When the computer 500 is in operation, the processor 510 is configuredto execute software stored within the memory 520, to communicate data toand from the memory 520, and to generally control operations of thecomputer 500 pursuant to the software. The application 560 and the O/S550 are read, in whole or in part, by the processor 510, perhapsbuffered within the processor 510, and then executed.

When the application 560 is implemented in software, it should be notedthat the application 560 can be stored on virtually any computerreadable medium for use by or in connection with any computer relatedsystem or method. In the context of this document, a computer readablemedium may be an electronic, magnetic, optical, or other physical deviceor means that can contain or store a computer program for use by or inconnection with a computer related system or method.

The application 560 can be embodied in any computer-readable medium foruse by or in connection with an instruction execution system, apparatus,or device, such as a computer-based system, processor-containing system,or other system that can fetch the instructions from the instructionexecution system, apparatus, or device and execute the instructions. Inthe context of this document, a “computer-readable medium” can be anymeans that can store, communicate, propagate, or transport the programfor use by or in connection with the instruction execution system,apparatus, or device. The computer readable medium can be, for examplebut not limited to, an electronic, magnetic, optical, electromagnetic,infrared, or semiconductor system, apparatus, device, or propagationmedium.

More specific examples (a nonexhaustive list) of the computer-readablemedium would include the following: an electrical connection(electronic) having one or more wires, a portable computer diskette(magnetic or optical), a random access memory (RAM) (electronic), aread-only memory (ROM) (electronic), an erasable programmable read-onlymemory (EPROM, EEPROM, or Flash memory) (electronic), an optical fiber(optical), and a portable compact disc memory (CDROM, CD R/W) (optical).Note that the computer-readable medium could even be paper or anothersuitable medium, upon which the program is printed or punched, as theprogram can be electronically captured, via for instance opticalscanning of the paper or other medium, then compiled, interpreted orotherwise processed in a suitable manner if necessary, and then storedin a computer memory.

In exemplary embodiments, where the application 560 is implemented inhardware, the application 560 can be implemented with any one or acombination of the following technologies, which are each well known inthe art: a discrete logic circuit(s) having logic gates for implementinglogic functions upon data signals, an application specific integratedcircuit (ASIC) having appropriate combinational logic gates, aprogrammable gate array(s) (PGA), a field programmable gate array(FPGA), etc.

As described above, the exemplary embodiments can be in the form ofcomputer-implemented processes and apparatuses for practicing thoseprocesses. The exemplary embodiments can also be in the form of computerprogram code containing instructions embodied in tangible media, such asfloppy diskettes, CD ROMs, hard drives, or any other computer-readablestorage medium, wherein, when the computer program code is loaded intoand executed by a computer, the computer becomes an apparatus forpracticing the exemplary embodiments. The exemplary embodiments can alsobe in the form of computer program code, for example, whether stored ina storage medium, loaded into and/or executed by a computer, ortransmitted over some transmission medium, loaded into and/or executedby a computer, or transmitted over some transmission medium, such asover electrical wiring or cabling, through fiber optics, or viaelectromagnetic radiation, wherein, when the computer program code isloaded into an executed by a computer, the computer becomes an apparatusfor practicing the exemplary embodiments. When implemented on ageneral-purpose microprocessor, the computer program code segmentsconfigure the microprocessor to create specific logic circuits.

While the invention has been described with reference to exemplaryembodiments, it will be understood by those skilled in the art thatvarious changes may be made and equivalents may be substituted forelements thereof without departing from the scope of the invention. Inaddition, many modifications may be made to adapt a particular situationor material to the teachings of the invention without departing from theessential scope thereof. Therefore, it is intended that the inventionnot be limited to the particular embodiments disclosed for carrying outthis invention, but that the invention will include all embodimentsfalling within the scope of the claims. Moreover, the use of the termsfirst, second, etc., do not denote any order or importance, but ratherthe terms first, second, etc., are used to distinguish one element fromanother. Furthermore, the use of the terms a, an, etc., do not denote alimitation of quantity, but rather denote the presence of at least oneof the referenced item.

1. An internet protocol television enabled communication device, being aset top box, that provides automatic message service, comprising: aprocessor for executing instructions from a memory; and a clientapplication stored in the memory and configured to provide automaticmessage service; wherein the client application is configured to:receive by the set top box input of associating an action with amessage; receive in a user interface of the set top box input of themessage to be presented at an appropriate time on a television; receiveby the set top box input of a recipient of the message; present by theset top box the message for display on the television to the recipientat the appropriate time; and execute the action associated with message;wherein in response to the client application on the set top boxreceiving input of a particular message having no action associatedtherewith, the client application on the set top box is configured toparse keywords of the particular message having no action associatedtherewith, determine a particular action based on parsing the keywordsof the particular message, associate the particular action to theparticular message; and execute the particular action in response to therecipient selecting affirmative to the particular message; and whereinthe action associated with the message can cause the client application:to enable and disable a device; to enable and disable an application; toenable and disable capabilities of the set top box; to operativelyconnect to a computing device; and to place a telephone call.
 2. Thecommunication device of claim 1, wherein the message for the recipientis stored on a storage; and wherein the client application retrieves themessage from the storage.
 3. The communication device of claim 1,wherein the appropriate time is a time that the message is designated tobe presented for display to the recipient.
 4. The communication deviceof claim 1, wherein the client application communicates with a serverapplication residing on a server to provide the automatic messageservice.
 5. The communication device of claim 1, wherein the clientapplication enables a creator of the message to log in using a usernameand a password; and wherein the message presented for display to therecipient displays the creator of the message.
 6. The communicationdevice of claim 1, wherein the client application receives a usernameand a password input by the recipient such that the recipient can accessrestricted messages for the recipient; and wherein the clientapplication restricts others from accessing the restricted messages forthe recipient.
 7. A method for providing automatic message service on aset top box, comprising: receiving by the set top box input ofassociating an action with a message; receiving in a user interface ofthe set top box input of the message to be presented at an appropriatetime on a television; receiving by the set top box input of a recipientof the message; and presenting by the set top box the message fordisplay to the recipient at the appropriate time on the television;wherein in response to a client application on the set top box receivinginput of a particular message having no action associated therewith, theclient application on the set top box is configured to parse keywords ofthe particular message having no action associated therewith, determinea particular action based on parsing the keywords of the particularmessage, associate the particular action to the particular message; andexecute the particular action in response to the recipient selectingaffirmative to the particular message; and wherein the action associatedwith the message can cause the client application: to enable and disablea device; to enable and disable an application; to enable and disablecapabilities of the set top box; to operatively connect to a computingdevice; and to place a telephone call.
 8. The method of claim 7, furthercomprising: storing the message in a storage; and retrieving the messagefrom the storage.
 9. The method of claim 7, wherein the clientapplication residing on the set top box interacts with a serverapplication residing on a server to provide the automatic messageservice.
 10. The method of claim 7, further comprising receiving inputof a username and a password corresponding to a creator of the message,such that the creator of the message is identified as the message isbeing presented for display to the recipient on the television.
 11. Themethod of claim 7, further comprising receiving input of a username anda password corresponding to the recipient of the message, such that therecipient can access the message for the recipient, wherein others arerestricted from accessing the message for the recipient.
 12. The methodof claim 7, wherein the appropriate time is a time that the message isdesignated to be presented for display to the recipient.
 13. A computerprogram product, tangibly embodied on a non-transitory computer readablemedium, for providing automatic message service for a set top box, thecomputer program product including instructions for causing the set topbox to execute a method, comprising: receiving by the set top box inputof associating an action with a message; receiving in a user interfaceof the set top box input of the message to be presented at anappropriate time on a television; receiving input of a recipient of themessage; and presenting the message for display to the recipient at theappropriate time on the television; wherein in response to the set topbox receiving input of a particular message having no action associatedtherewith, instructions cause the set top box to parse keywords of theparticular message having no action associated therewith, determine aparticular action based on parsing the keywords of the particularmessage, associate the particular action to the particular message; andexecute the particular action in response to the recipient selectingaffirmative to the particular message; and wherein instructions causethe set top box to enable a device, to disable the device, to enable anapplication, to disable the application, to enable capabilities of theset top box, to disable capabilities of the set top box, to operativelyconnect to a computing device, and to place a telephone call.
 14. Thecomputer program product of claim 13, further comprising instructionsfor causing the set top box to execute storing the message in a storage;and retrieving the message from the storage.
 15. The computer programproduct of claim 13, further comprising instructions for causing the settop box to execute receiving input of a username and a passwordcorresponding to a creator of the message, such that the creator of themessage is identified as the message is being presented for display tothe recipient on the television.
 16. The computer program product ofclaim 13, further comprising instructions for causing the set top box toexecute receiving input of a username and a password corresponding tothe recipient of the message, such that the recipient can access themessage for the recipient, wherein others are restricted from accessingthe message.
 17. The computer program product of claim 13, wherein theappropriate time is a time that the message is designated to bepresented for display to the recipient.